package com.controller;

import com.base.AjaxResult;
import com.base.BaseController;
import com.service.FreeApiService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.*;

@RestController
@RequestMapping("freeapi")
public class FreeApiController extends BaseController {

    @Autowired
    private FreeApiService freeApiService;

    //技术文档 https://www.free-api.com/doc/567
    //调用免费API获取每日搞笑段子   总页数10541  有并发次数1
    //调用接口获取数据 并进行数据库的保存，并没有返回给前端
    @GetMapping("jokes")
    public AjaxResult jokes(int page){
        String result = freeApiService.addJokes(page);
        if(result.startsWith("成功")){
            return success(result);
        }else{
            return error(result);
        }
    }

    //调用API 保存到数据库，并返回给前端
    //调用接口获取随机女神  https://www.free-api.com/doc/665
    @GetMapping("randomGodess")
    public AjaxResult randomGodess(){
        Map map = freeApiService.getRandomGoddess();
        String result = map.get("msg").toString();
        String url = map.get("content").toString();
        if(result.startsWith("成功")){
            return success(url);
        }else{
            return error(url);
        }
    }

    //调用API 保存到数据库，并返回给前端
    //调用接口获取高质量小姐姐
    @GetMapping("randomGodessVideo")
    public AjaxResult randomGodessVideo(){
        Map map = freeApiService.getRandomGoddessVideo();
        String result = map.get("msg").toString();
        String url = map.get("content").toString();
        if(result.startsWith("成功")){
            return success(url);
        }else{
            return error(url);
        }
    }

    //调用API 保存到数据库，并返回给前端
    //调用接口获取随机女神  https://www.free-api.com/doc/665
    @GetMapping("randomTu")
    public AjaxResult randomTu(@Param("type")String type){
        Map map = freeApiService.getRandomTu(type);
        String result = map.get("msg").toString();
        String url = map.get("content").toString();
        if(result.startsWith("成功")){
            return success(url);
        }else{
            return error(url);
        }
    }


    //需要做一个小程序，管理阅读已经存储的内容。
    //先做文字的，有笑话的基础，分页获取

    //需要先完成小程序的搭建

}
